package org.example.backend.entity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

public class PolicyInfo implements Serializable {
    private String policyId; // 主键
    private String title; // 政策标题
    private Date writeTime; // 起草时间
    private Date publishTime; // 发布时间
    private Date startTime; // 生效时间
    private Date endTime; // 失效时间
    private Boolean validity; // 是否有效
    private String fileType; // 文件类型
    private String department; // 发布部门
    private String documentNumber; // 文号
    private String mainText; // 政策正文
    private Boolean isCompanyPolicy; // 企业政策
    private Boolean isCrossborderPolicy; // 跨境政策
    private Integer level; // 政策级别
    private String type; // 政策类型
    private String language; // 语言
    private String address1;
    private String address2;
    private String address3;
    private String address4;
    private String address5;
    private String address6;
    private String mindmapTimeJson;
    private String mindmapSpaceJson;
    private String mindmapThemeJson;
    private String flowchartJson;
    private String aiSummary;

    // 原始标签字段
    private String gbIndustry2;
    private String zxIndustry2;

    // 新增：聚合字段，用于接收SQL的string_agg结果
    private String gbIndustry2ListString;
    private String zxIndustry2ListString;

    // 新增：处理后的List字段
    private List<String> gbIndustry2List;
    private List<String> zxIndustry2List;

    public String getPolicyId() { return policyId; }
    public void setPolicyId(String policyId) { this.policyId = policyId; }
    public String getTitle() { return title; }
    public void setTitle(String title) { this.title = title; }
    public Date getWriteTime() { return writeTime; }
    public void setWriteTime(Date writeTime) { this.writeTime = writeTime; }
    public Date getPublishTime() { return publishTime; }
    public void setPublishTime(Date publishTime) { this.publishTime = publishTime; }
    public Date getStartTime() { return startTime; }
    public void setStartTime(Date startTime) { this.startTime = startTime; }
    public Date getEndTime() { return endTime; }
    public void setEndTime(Date endTime) { this.endTime = endTime; }
    public Boolean getValidity() { return validity; }
    public void setValidity(Boolean validity) { this.validity = validity; }
    public String getFileType() { return fileType; }
    public void setFileType(String fileType) { this.fileType = fileType; }
    public String getDepartment() { return department; }
    public void setDepartment(String department) { this.department = department; }
    public String getDocumentNumber() { return documentNumber; }
    public void setDocumentNumber(String documentNumber) { this.documentNumber = documentNumber; }
    public String getMainText() { return mainText; }
    public void setMainText(String mainText) { this.mainText = mainText; }
    public Boolean getIsCompanyPolicy() { return isCompanyPolicy; }
    public void setIsCompanyPolicy(Boolean isCompanyPolicy) { this.isCompanyPolicy = isCompanyPolicy; }
    public Boolean getIsCrossborderPolicy() { return isCrossborderPolicy; }
    public void setIsCrossborderPolicy(Boolean isCrossborderPolicy) { this.isCrossborderPolicy = isCrossborderPolicy; }
    public Integer getLevel() { return level; }
    public void setLevel(Integer level) { this.level = level; }
    public String getType() { return type; }
    public void setType(String type) { this.type = type; }
    public String getLanguage() { return language; }
    public void setLanguage(String language) { this.language = language; }
    public String getAddress1() { return address1; }
    public void setAddress1(String address1) { this.address1 = address1; }
    public String getAddress2() { return address2; }
    public void setAddress2(String address2) { this.address2 = address2; }
    public String getAddress3() { return address3; }
    public void setAddress3(String address3) { this.address3 = address3; }
    public String getAddress4() { return address4; }
    public void setAddress4(String address4) { this.address4 = address4; }
    public String getAddress5() { return address5; }
    public void setAddress5(String address5) { this.address5 = address5; }
    public String getAddress6() { return address6; }
    public void setAddress6(String address6) { this.address6 = address6; }
    public String getMindmapTimeJson() { return mindmapTimeJson; }
    public void setMindmapTimeJson(String mindmapTimeJson) { this.mindmapTimeJson = mindmapTimeJson; }
    public String getMindmapSpaceJson() { return mindmapSpaceJson; }
    public void setMindmapSpaceJson(String mindmapSpaceJson) { this.mindmapSpaceJson = mindmapSpaceJson; }
    public String getMindmapThemeJson() { return mindmapThemeJson; }
    public void setMindmapThemeJson(String mindmapThemeJson) { this.mindmapThemeJson = mindmapThemeJson; }
    public String getFlowchartJson() { return flowchartJson; }
    public void setFlowchartJson(String flowchartJson) { this.flowchartJson = flowchartJson; }
    public String getAiSummary() { return aiSummary; }
    public void setAiSummary(String aiSummary) { this.aiSummary = aiSummary; }
    public String getGbIndustry2() { return gbIndustry2; }
    public void setGbIndustry2(String gbIndustry2) { this.gbIndustry2 = gbIndustry2; }
    public String getZxIndustry2() { return zxIndustry2; }
    public void setZxIndustry2(String zxIndustry2) { this.zxIndustry2 = zxIndustry2; }
    public String getGbIndustry2ListString() { return gbIndustry2ListString; }
    public void setGbIndustry2ListString(String gbIndustry2ListString) { this.gbIndustry2ListString = gbIndustry2ListString; }
    public String getZxIndustry2ListString() { return zxIndustry2ListString; }
    public void setZxIndustry2ListString(String zxIndustry2ListString) { this.zxIndustry2ListString = zxIndustry2ListString; }
    public List<String> getGbIndustry2List() { return gbIndustry2List; }
    public void setGbIndustry2List(List<String> gbIndustry2List) { this.gbIndustry2List = gbIndustry2List; }
    public List<String> getZxIndustry2List() { return zxIndustry2List; }
    public void setZxIndustry2List(List<String> zxIndustry2List) { this.zxIndustry2List = zxIndustry2List; }
}
